#include<stdio.h>
#include<stdlib.h>
#include "lit.h"



void saisie(lit *L,int x)
{
L->id_personnel=x;
printf("donner l'id du malade se trouvant dans le lit\n");
scanf("%d",&(*L).id_malade);
printf("donner la référence du lit\n");
scanf("%d",&(*L).ref_lit);
} 
//***********************************************************************


void afficher_lit(void)
{FILE *f;
int x,y,z;
f=fopen("lit.txt","r"); 
if(f!=NULL) {  while(fscanf(f,"%d %d %d",&x,&y,&z)!=EOF){
                      printf("l'id du personnel est %d \t l'id du malade se trouvant dans le lit est %d \t la reférence du lit est %d \n",x,y,z);}
	     }
else printf("le fichier n'existe pas");

fclose(f);
}
//************************************************************************


int chercher_lit(int ref)
{ FILE *f;
int k=0,x,y,z,test=0;
f=fopen("lit.txt","r");


if(f!=NULL) { while((fscanf(f,"%d %d %d ",&x,&y,&z)!=EOF)&&(k==0)){

                  if(ref==z) { test=1;if (y!=0)k=0;
                               else if(y==0) k=1;}
                  
                  }}
if(test==0) k=2;


fclose(f);
return k;}

//***********************************************************************


void ajouter_malade_lit(lit *L ,int id_personnel)
{ FILE *f,*r;int x,y ,z,ref,id_malade;
L=malloc(sizeof(lit));

printf("donner la reference du lit\n");
scanf("%d",&ref);
if (chercher_lit(ref)==0)
printf("ce lit est occupé\n");
else if (chercher_lit(ref)==1)
{f=fopen("lit.txt","r");
r=fopen("lit1.txt","w");
L->id_personnel=id_personnel;
printf("donner l'id du malade qu'on va ajouter\n");
scanf("%d",&id_malade);

 
 if (f!=NULL)
{ while(fscanf(f,"%d %d %d",&x,&y,&z)!=EOF){
if (ref!=z) fprintf(r,"%d %d %d\n",x,y,z);
else if (ref==z){ fprintf(r,"%d %d %d\n",id_personnel,id_malade,z);
printf("le malade a été ajouter\n");}
}}   fclose(f);
fclose(r);
remove("lit.txt");
rename("lit1.txt","lit.txt");
free(L);
}

}
//********************************************************************



void ajouter_lit(void)
{FILE *f ;
int ref;
printf("donner la reference du lit à ajouter \n");
scanf("%d",&ref);
if (chercher_lit(ref)==2){
f=fopen("lit.txt","a");
if(f!=NULL)
{
 fprintf(f,"%d %d %d\n",0,0,ref);
printf("le lit a été ajouter");}fclose(f);}
else printf("le lit existe deja");
}
//*******************************************************************
void suppression_lit(void)
{FILE *f ,*r;int x,y,z,ref;
f=fopen("lit.txt","r");
r=fopen("lit1.txt","w"); 
 if (f!=NULL)
{printf("donner la reference du lit a supprimer \n");
scanf("%d",&ref);
{ while(fscanf(f,"%d %d %d",&x,&y,&z)!=EOF)
{
if (ref!=z) fprintf(r,"%d %d %d\n",x,y,z);
else
printf("le lit a été supprimer\n");}
}}   fclose(f);
fclose(r);
remove("lit.txt");
rename("lit1.txt","lit.txt");}
//*************************************************************************


void suppression_malade_lit(void)
{FILE *f ,*r;int x,y,z,id_malade;
printf("donner l'id du malade a supprimé \n");
scanf("%d",&id_malade);

f=fopen("lit.txt","r");
r=fopen("lit1.txt","w");
if (f!=NULL)
{while (fscanf(f,"%d %d %d",&x,&y,&z)!=EOF)
{if(id_malade!=y) fprintf(r,"%d %d %d\n",x,y,z);
else{ fprintf(r,"%d %d %d\n",x,0,z); 
printf("le malade a été supprimer\n");}}
}else printf("le fichier n'existe pas"); fclose(f);
fclose(r);
remove("lit.txt");
rename("lit1.txt","lit.txt");}











		
